package com.itheima.edu.info.manager.dao;

import com.itheima.edu.info.manager.domain.Student;

public class StudentDao {
    //创建学生对象数组用来存储数据
    private  static Student[] stus=new Student[5];

    //根据id删除学生
    public static void deleteStudentById(String delId) {
        //查找id在容器中所在的索引位置
        int index=getIndex(delId);
        //将该索引位置,使用null元素进行覆盖
        stus[index]=null;
    }

    public static int getIndex(String id) {
        int index=-1;
        for (int i = 0; i < stus.length; i++) {
            Student stu= stus[i];
            if (stu!=null&&stu.getId().equals(id)){
                index=i;
                break;
            }
        }
        return index;
    }
    //根据id修改
    public static void updateStudent(String updateId, Student newStu) {
        //查找updateStudent在索引中的位置
        int index=getIndex(updateId);
        //将该索引位置,使用新的学生对象进行替换
        stus[index]=newStu;
    }

    //添加学生方法
    public  boolean addStudent(Student stu) {

        //添加学生到数组
        //定义index为-1,假设数组已经全部装满,没有null元素;
        int index=-1;
        //遍历数组取出每一个元素,判断是否是null
        for (int i = 0; i < stus.length; i++) {
            Student student=stus[i];
            if (student==null){
                index=i;
                //如果是null让index变量记录索引位置,结束循环
                break;
            }
        }
        //返回添加成功的boolean类型状态
        if (index==-1){
            //装满了
            return false;
        }else {
            //没有装满正常添加
            stus[index]=stu;
            return true;
        }
    }
    //查看学生方法
    public Student[] findAllStudent() {
        return stus;
    }
}
